/**
  大 => 小、小 => 大 : ch ^= 32;
  大 => 小、小 => 小 : ch |= 32;
  小 => 大、大 => 大 : ch &= -33;
  */

class Solution {
public:
  string toLowerCase(string str)
  {
    for(auto &i : str)
      i ^= 32;

    return str;
  }
};

// #include <stdio.h>
// int main(int argc, char const *argv[])
// {
//   printf("'a' = %d\n", 'a');
//   printf("'A' = %d\n", 'A');
//   printf("'a' |= 32: %c\n", 'a' | 32);
//   printf("'A' |= 32: %c\n", 'A' | 32);
//   printf("97 |= 32: %d\n", 97 | 32);
//   printf("65 |= 32: %d\n", 65 | 32);
//   printf("33 |= 32: %d\n", 33 | 32);
//   printf("34 |= 32: %d\n", 34 | 32);
//   printf("35 |= 32: %d\n", 35 | 32);
//   printf("31 |= 32: %d\n", 31 | 32);
// }